<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="utf-8"/>
    <title>Expanded Editor.md - Editor.md examples</title>
    <link rel="stylesheet" href="css/style.css"/>
    <link rel="stylesheet" href="../css/editormd.css"/>
    <link rel="shortcut icon" href="https://pandao.github.io/editor.md/favicon.ico" type="image/x-icon"/>
</head>
<body>
<div id="layout">
    <header>
        <h1>Expanded Editor.md</h1>
        <p>Expanded of member methods and properties</p>
    </header>
    <div id="test-editormd">
                <textarea style="display:none;">### Expanded Editor.md

```javascript
var testEditor;

function EditormdExtend() {

    this.extend("methodC", function() {
        console.log("methodC");
    });

    // or
    testEditor.extend("methodA", function() {
        console.log("methodA");
    });

    // one by one setting
    this.set("propertyA", "propertyA");
    this.set("methodE", function() {
        console.log("mothodE", this);
    });

    // mutil
    this.extend({
        propertyA : "propertyAAAA", // override, you can override other default method.
        propertyB : "propertyB",
        methodD : function() {
            console.log("methodD");
        }
    });

    this.methodB = function() {
        console.log("methodB");
    };

    testEditor.methodA();
    testEditor.methodB();
    this.methodC();
    this.methodE();
    editormd.methodOne();

    console.log(this, this.propertyA);
}

editormd.fn.customMethod = function(){
    console.log("customMethod", this);
};

$(function() {
    editormd.methodOne = function(){
        console.log("editormd.methodOne");
    };

    testEditor = editormd("test-editormd", {
        width  : "90%",
        height : 720,
        path   : '../lib/',
        onload : function() {
            this.customMethod();
            $.proxy(EditormdExtend, this)();
        }
    });

    editormd.methodOne();
});
```
</textarea>
    </div>
</div>
<script src="js/jquery.min.js"></script>
<script src="../editormd.js"></script>
<script type="text/javascript">
    var testEditor;

    function EditormdExtend() {

        this.extend("methodC", function () {
            console.log("methodC");
        });

        // or
        testEditor.extend("methodA", function () {
            console.log("methodA");
        });

        // one by one setting
        this.set("propertyA", "propertyA");
        this.set("methodE", function () {
            console.log("mothodE", this);
        });

        // mutil
        this.extend({
            propertyA: "propertyAAAA", // override, you can override other default method.
            propertyB: "propertyB",
            methodD: function () {
                console.log("methodD");
            }
        });

        this.methodB = function () {
            console.log("methodB");
        };

        testEditor.methodA();
        testEditor.methodB();
        this.methodC();
        this.methodE();
        editormd.methodOne();

        console.log(this, this.propertyA);
    }

    editormd.fn.customMethod = function () {
        console.log("customMethod", this);
    };

    $(function () {
        editormd.methodOne = function () {
            console.log("editormd.methodOne");
        };

        testEditor = editormd("test-editormd", {
            width: "90%",
            height: 720,
            path: '../lib/',
            onload: function () {
                this.customMethod();
                $.proxy(EditormdExtend, this)();
            }
        });

        editormd.methodOne();
    });
</script>
</body>
</html>